# 输入一个正整数数组，把数组里所有数字拼接起来排成一个数，打印能拼接出的所有数字中最小的一个。例如输入数组{3，32，321}，
# 则打印出这三个数字能排成的最小数字为321323。

def PrintMinNumber(numbers):
    return str(min(get_sorted_set(numbers))).replace('[','').replace(']','')

# 这个方法是得到所有去重之后的排列组合数组
def get_sorted_set(num):
    if len(num)<=1:
        return num
    res = set()
    for i in range(len(num)):
        for j in get_sorted_set(num[:i]+num[i+1:]):
            res.add(int(str(num[i])+str(j)))

    return sorted(res)

print(PrintMinNumber([[321]]))